1. Field of the Invention
The present invention relates, generally, to the discovery and configuration of devices connected to a network; and in particular embodiments, to the discovery and configuration of storage devices connected to an Ethernet network without using the Internet Protocol (IP) address of the devices.
2. Description of Related Art
FIG. 1 illustrates a Fibre Channel (FC) storage system 100 utilizing root switches 102. FC storage system 100 also includes Redundant Array of Independent Disks (RAID) controllers 104 and multiple “don't care” Bunch Of Disks (xBODs) 106, which may be either a Switched Bunch Of Disks (SBODs) or Just a Bunch Of Disks (JBODs). Each RAID controller 104 is connected to a root switch 102, which may be a “half-rack” device, and each root switch 102 is connected to each xBOD 106 via dedicated ports. Dual channels may be provided for each connection (e.g. channel A and B) for redundancy. The RAID controllers 104 and root switches 102 may include Ethernet ports 108 to provide a management interface independent of the Fibre Channel interface. A personal computer (PC) 110 connected to an Ethernet network 114 can be used as a user interface to communicate with and manage the RAID controllers 104 and root switches 102 via an Ethernet switch or router 112 connected to the management interfaces (Ethernet ports 108) of the RAID controllers 104 and root switches 102.
FIG. 2 illustrates a local Ethernet network 200 (a subnet) for connecting and enabling communications with multiple devices of interest 202 and other Ethernet devices 204. The multiple devices of interest 202 and other Ethernet devices 204 connect to the local Ethernet network 200 via their Ethernet ports as described above. The devices of interest 202 are distinguished from other Ethernet devices 204 in that the devices of interest 202 may have the same manufacturer and may even perform the same function (e.g. root switches from the same manufacturer as shown in FIG. 1). Also attached to the Ethernet network 200 is a PC or other device 206 to configure and manage the devices of interest 202 and other Ethernet devices 204 (e.g. retrieve status, change configuration, and the like), and a router 208 for connecting the local Ethernet network 200 to other networks 210.
In legacy systems, in addition to the Ethernet ports described above, the devices of interest and other Ethernet devices include RS-232 serial ports. With an RS-232 serial port, a network manager could connect a PC directly to individual devices of interest and other Ethernet devices via their RS-232 serial ports, and provide or obtain the IP address (a unique software address for a device within a local network), Netmask, Gateway and other Ethernet-related information needed for communication over the Ethernet backbone. Note that a Gateway is an IP address for a router, which is the address that is needed when sending a request to a device in a different subnet or local area. When the router receives such a request, it forwards the request to the proper device in the other subnet or local area.
However, state of the art devices of interest may be physically small devices, such as the half-rack root switches of FIG. 1, and there may not be enough room to fit both an Ethernet port and an RS-232 serial port on each device of interest. In addition, while Ethernet ports are commonly used as management interfaces, RS-232 serial ports may be used very infrequently, such as only during initial configuration to set the IP address, net mask, and gateway for a device of interest, and may thereafter be unused.
Therefore, it would be desirable if the RS-232 serial port could be eliminated from a device of interest. However, when a device of interest arrives from a manufacturer, it needs to be configured. Without an RS-232 port and with only an Ethernet port, a network manager cannot currently set the IP address of the device of interest, and without the IP address, Transmission Control Protocol (TCP)/IP communications with the device of interest are impossible. Furthermore, the IP address of a device is usually dynamic. Any device could be potentially set with any IP address, and there may be no outward indication of a device's current IP address. Even if the IP address of a device is known, it may have been put into a network configuration for which it is not set up (i.e. the device's IP address, Gateway and Netmask are not set up correctly for the subnet it is placed on). Under this situation, the device will not be able to send IP traffic even if the IP address of the device is known.
Note that the only other way to obtain the IP address of a device is to use a Domain Host Control Protocol (DHCP) server implementing a DHCP protocol (or a similar protocol such as BOOTP or Reverse Address Resolution Protocol (RARP)), which requires a larger and more expensive implementation than the embodiments of the present invention described below. The DHCP server's primary function is to service requests for IP addresses. When a DHCP client running in a DHCP-enabled device first powers up, it sends a request to the DHCP server for an IP address and other information, to allow communication on an ethernet network. However, the DHCP server does not know which devices are “devices of interest,” as defined above, and cannot perform configuration management on those devices of interest. In response to the request for an IP address, the DHCP server provides an address to the device of interest from a pool of IP addresses, but there is no way for a network manager to know which of the IP addresses from the pool was assigned to the device of interest, so management of the device of interest is still not possible. With this system, each device is individually tested to determine if it is a device of interest. Thus, use of a DHCP protocol and server to provide an IP address is not an acceptable solution.
If a device of interest with only an Ethernet port is received from the manufacturer and needs to be configured and managed, it may be connected to the Ethernet via its Ethernet port and communicate using Ethernet protocols. This is true because each device of interest has a known Media Access Control (MAC) address, which is a worldwide unique Ethernet name for that device of interest hardcoded at the factory. (This is in contrast to the IP address, which is software assigned and configured by users.) Note that regardless of what higher level protocol a device of interest uses to communicate, at the lowest level the bits put out onto the wire are Ethernet frames, which always have an Ethernet MAC source and destination address. However, although Ethernet communications are enabled, there is no way to communicate specifically with the device of interest using TCP/IP because its IP address is not known.
Therefore, there is a need to be able to configure and manage a device of interest (e.g. a root switch) and determine the IP address of that device of interest to enable TCP/IP communications with that device using only the Ethernet MAC address and an Ethernet port as a management interface.